[Zendesk]セキュリティベストプラクティスまとめ – Zendesk入門 Advent Calendar 2021 Day9 #zendesk
コンニチハ、千葉です。
このエントリは、クラスメソッドZendesk入門 Advent Calendar 2021の9日目です。
Zendesk を利用する上で気になるセキュリティについて、ご紹介します。 安全に利用するためのプラクティスを見ていきましょう!
セキュリティベストプラクティス
Zendesk では、セキュリティのベストプラクティスが公開されています。ベストプラクティスを中心に、実際の設定方法について確認したいと思います。
認証
Zendeskのユーザーは、大きく3種類存在します。管理者、エージェント、エンドユーザーです。
- 管理者:Zendesk をカスタマイズ可能なユーザー
- エージェント:顧客からの問合せに回答するユーザー
- エンドユーザー:顧客として問合せ可能なユーザー
Zendesk の認証に関する設定はチームメンバー(管理者ユーザー/エージェント)、エンドユーザーそれぞれ設定します。 例えば、チームメンバーの認証はSSO、エンドユーザーの認証はZendeskデフォルト認証のように設定可能です。 まずは、この概念を覚えておきましょう。
パスワードの強度
パスワードの強度レベルを3段階から選択できます。
- 低:5文字以上の長さのパスワードが必要。これはデフォルトのセキュリティレベルです。
- 中:6文字以上の長さのパスワードが必要。また、以下の要件を満たす必要があります。
- 数字、大文字、小文字のすべてを含む。
- アルファベットや数字以外の特殊文字(#、@、!など)を含む。
- 高:6文字以上の長さのパスワードが必要。また、以下の要件を満たす必要があります。
- 数字、大文字、小文字のすべてを含む。
- アルファベットや数字以外の特殊文字(#、@、!など)を含む。
- パスワードの有効期間は90日間です。パスワード更新の際には過去5件のパスワードと同じものは指定できません。
高を選ぶと90日でパスワード更新が必要となります。米国国立標準技術研究所(NIST)や内閣サイバーセキュリティセンター(NISC)のガイドラインでは、定期的な更新を要求すべきでないと示されています。組織によって状況は異なると思うので、適宜選択しましょう。
参考:https://www.soumu.go.jp/main_sosiki/joho_tsusin/security/business/staff/01.html
チームメンバーのパスワード強度は、管理センター > アカウント > チームメンバーの認証 から設定できます。
エンドユーザーのパスワード強度を設定したい場合は、管理センター > アカウント > エンドユーザー認証 から設定します。
2要素認証の強制
2要素認証を有効化しましょう。この設定を有効にすると、次回からログイン時に2要素認証の設定を求めるようになります。 ※2要素認証ですが、チームメンバー(管理者/エージェント)に対してのみ設定可能です。残念ながらエンドユーザーは2要素認証有効化できません。エンドユーザーにも2要素認証を設定したい場合は、 SSO による Zendesk 以外での認証を導入する必要があります。例えば、Auth0 などです。
では、2要素認証を強制してみましょう。
管理センター > アカウント > セキュリティ > 詳細 から設定できます。
2要素認証は必須にしたいところです。有効化されているかCSVで出力も可能です。定期的な棚卸をしましょう。CSVは、2要素認証の設定画面から出力可能です。
クリックすると、ダウンロードリンクがメールで届きます。
参考:https://support.zendesk.com/hc/ja/articles/4408829277466
2要素認証の設定方法
2要素認証を強制した状態で、2要素認証未設定のエージェントユーザーで Zendesk にログインしてみます。 メール/パスワードしログインすると、2要素認証の設定画面が表示されます。設定を適宜行いましょう。
SSO
SSO は、チームメンバー(管理者/エージェント)とエンドユーザーでそれぞれ設定します。エンドユーザーに MFA を導入したい場合は、SSO が必要になります。また、チームメンバーは社内の認証システムと連携するという場合に設定します。
管理センター > アカウント > セキュリティ > チームメンバーの認証またはエンドユーザー認証から設定します。
Google、Microsoft、シングルサインオンから選択できます。
また、シングルサインオンについて(Auth0などの外部認証)は、別途シングルサインオンで設定が可能です。
参考:Auth0を使ってZendeskにログインしてみました
IPアドレス制限
Zendesk の利用を特定企業や人に限定したい場合、IP アドレスでのアクセス制限を導入できます。また、エージェントや管理者(権限が高い)などのユーザーのみに IP アドレス制限し、エンドユーザーには制限しないことも可能です。
管理センター >「アカウント」>「セキュリティ」>「詳細」から設定します。
参考:IPアドレス範囲の制限によるZendesk Supportおよびヘルプセンターへのアクセスの制限
添付ファイルをプライベート化
問合せの時に、件名、内容に加えてファイル添付が可能です。この添付ファイルは、デフォルトでは URL(複雑なトークン付き) が分かればダウンロード可能になっています。そのためセキュアにしたい場合は、ダウンロード時に認証を追加します。設定変更により、ダウンロード時にログインが必須にできます。
管理センター >「オブジェクトとルール」>「チケット」>「設定」の「安全なダウンロードを有効にする」から有効化します。
クレジットカード番号のマスキング
ユーザーが誤ってクレジットカード番号を入力すると、エージェント全員に表示されることに加えて、コメントやカスタムフィールドとして Zendesk のデータベースに自動的に保存されます。これを防ぐために、墨消し機能を有効にできます。番号の一部が「■12345 1▇▇▇▇ ▇2348」のように自動で墨消しされます。もし、クレジットカード番号を収集する必要がある場合は、PCI DSS 要件を満たすクレジットカードフィールドで対応します。
墨消の有効化手順です。
管理センター > 「アカウント」 > 「セキュリティ」>「その他の設定」> 「Zendesk Support」タブ > 「自動墨消し」から有効化します。
参考:クレジットカード番号をチケットで自動的に墨消しする方法
その他
必須で設定したい項目を紹介しました。他にもベストプラクティスとして紹介されているものがあるので、それぞれチェックしましょう。
- ユーザー名、メールアドレス、パスワードは開示してはならない
- 管理者アクセス権を持つエージェントの数を制限する
- Zendeskアカウントを定期的に監査する
- アカウントの監査ログを監視する
- エージェントにユーザーアカウントの監視を勧める
- REST APIを使用している場合のアクセス制限または安全なコーディング方法への順守
- フォーラムのスパム対策
さいごに
Zendesk を利用する上でのセキュリティについて振り返ってみました。これから利用する方も、現在利用する方も、この記事を見たことをきっかけに見直などしていただけるといいなと思います。意外と見逃していた設定があるかもしれません!